/**
 * 成员管理 API 类型
 */

export interface MemberManagementParams extends PageCommonParams {
    username?: string;
    jobNumber?: string;
    phone?: string;
    create?: string[];
    userNameAndJobNumber?: string;
}

export interface MemberManagementResponse extends ResponseListCommon<UserVO> {}

/**
 * 用户信息列表模型
 */
export interface UserVO {
    /**
     * 创建时间
     */
    createTime?: Date;
    /**
     * 创建人
     */
    creator?: string;
    /**
     * 邮箱
     */
    email?: string;
    /**
     * 用户id
     */
    id?: number | string;
    /**
     * 成员工号
     */
    jobNumber?: string;
    /**
     * 手机号
     */
    phone?: string;
    /**
     * 职位
     */
    position?: string;
    /**
     * 角色
     */
    userRoles?: UserRole[];
    /**
     * 成员姓名
     */
    username?: string;
    /**
     * 车间
     */
    workshopName?: string;
    workshops?: string | Workshop;
    workshopId?: string | number;
    roleIds?: string[];
    roleNames?: string[];
}

/**
 * 用户角色
 */
export interface UserRole {
    roleId: string;
    roleName: string;
    value?: string;
}

/**
 * Workshop
 */
export interface Workshop {
    /**
     * 手机号
     */
    contactNumber?: string;
    createTime?: Date;
    /**
     * 创建人
     */
    creator?: string;
    /**
     * 数据来源
     */
    dataSource?: DataSource;
    /**
     * id
     */
    id?: number;
    state?: State;
    updateTime?: Date;
    /**
     * 用户id
     */
    userId?: number;
    /**
     * 车间编码
     */
    workshopCode?: string;
    /**
     * 车间负责人
     */
    workshopLeader?: string;
    /**
     * 车间名称
     */
    workshopName?: string;
}

/**
 * 数据来源
 */
export enum DataSource {
    Artificial = 'ARTIFICIAL',
    Excel = 'EXCEL'
}

export enum State {
    Disable = 'DISABLE',
    Enable = 'ENABLE'
}
